import Vue from 'vue'
import store from './store'
import App from './App'
import './filters'
import * as otherApi from './config/api.js'


import * as Common from './config/common.js'
import * as Db from './config/db.js'
import * as Config from './config/config.js'
import Json from './Json' //测试用数据
/**
 *  因工具函数属于公司资产, 所以直接在Vue实例挂载几个常用的函数
 *  所有测试用数据均存放于根目录json.js
 *
 *  css部分使用了App.vue下的全局样式和iconfont图标，有需要图标库的可以留言。
 *  示例使用了uni.scss下的变量, 除变量外已尽量移除特有语法,可直接替换为其他预处理器使用
 */
const msg = (title, duration=1500, mask=false, icon='none')=>{
	//统一提示方便全局修改
	if(Boolean(title) === false){
		return;
	}
	uni.showToast({
		title,
		duration,
		mask,
		icon
	});
}
const json = type=>{
	//模拟异步请求数据
	return new Promise(resolve=>{
		setTimeout(()=>{
			resolve(Json[type]);
		}, 500)
	})
}

const prePage = ()=>{
	let pages = getCurrentPages();
	let prePage = pages[pages.length - 2];
    // #ifdef H5
    return prePage;
    // #endif

	return prePage.$vm;
}
Vue.prototype.$otherApi = otherApi;
Vue.prototype.$common = Common;
Vue.prototype.$db = Db;
Vue.prototype.$config = Config;
Vue.config.productionTip = false
Vue.prototype.$fire = new Vue();
Vue.prototype.$store = store;
Vue.prototype.$api = {msg, json, prePage};
Vue.prototype.$host = window.location.protocol + "//" + window.location.host

App.mpType = 'app'
import url from '@/common/util/personal.js'
Vue.mixin({
	methods: {
		async toPersonalDeail(e){
			uni.showLoading({
				mask: true
			});
			let userId=e.currentTarget.dataset.userid?e.currentTarget.dataset.userid:1
			let type=e.currentTarget.dataset.type?e.currentTarget.dataset.type:'作品'
			let res=await url.getDesignerInfo({userId:userId})
			uni.hideLoading()
			if(res.code==0){
				if(res.data.userType=='设计师'){
					uni.navigateTo({
						url: '/pages/otherHomepage/designerIndex?userId='+userId+"&type="+type
					})
				}else{
					uni.navigateTo({
						url: '/pages/otherHomepage/otherUsersIndex?userId='+userId
					})
				}
			}
		}
	}
})
const app = new Vue({
    ...App
})
app.$mount()
